-->
获得免费通行证,加入我们的流媒体连接-2月19日至22日; 现在注册!

教程:高触控编码与微软表达式编码器2

文章特色图片
文章特色图片

几个月前,我被选为首届流媒体全明星队的成员. 有一个有趣的视频蒙太奇,展示了我们每个人在棒球卡上的图像, 由科罗拉多雪崩队的播音员艾伦·罗奇配音. 好东西, 但压缩并没有完全达到我对压缩痴迷和个人虚荣心的罕见交集的标准. 所以我问能不能自己试一试.

本文是该过程的详细演练, 作为一个有时被称为“高触点”压缩的例子. 这与像YouTube这样的网站所做的大量自动编码相反, 它更像是劳动密集型产业, 质量关键工作流程用于一流DVD和蓝光标题. 虽然不适合大多数压缩项目, 对于将被广泛看到的片段, 它会有回报的. 如果某样东西要被观看成千上万次, 即使是质量上的微小改进也会对信息的传达产生影响, 节省10%的比特率可以抵消总带宽成本.

具体地说, 本文将展示微软新的Expression Encoder 2产品的一些新的编码特性,以实现高质量的压缩, 使用Silverlight皮肤进行创作, 并发布到Silverlight流媒体服务.


由于源代码问题,大多数劳动密集型编码项目通常具有挑战性, 不是编解码器调整. 这也不例外. 在观看原始剪辑时,我注意到的第一件事是背景图形和一些动画是交错的.

而一个正常的去隔行过滤器会解决这个问题, 这会导致更多的疲软,如下图所示. 可用于AVISynth等工具的重量级动作自适应去交织器配置起来可能非常挑剔,而且速度极慢. 最后,没有什么比一开始就把源固定下来更重要的了. Compression is the art of getting output as close to the original as possible with the available bits; higher-quality sources can provide a much bigger improvement than anything in the codec.

我联系了邮局, 他们修复了背景交错(这只是在After Effects中正确标记库存素材源为交错的问题), 这是在PNG或动画编解码器中提供的素材中常见的错误),并为我重新渲染为无损的RGB PNG编解码器QuickTime .mov文件(PNG更容易编辑,通常比旧的默认“动画”编解码器生成更小的文件). 然而,有两个镜头偷偷地穿过了一层仍然交错的地方.

我不想再等一张唱片了, 所以我钻研了After Effects(所有困难的预处理工作似乎都在After Effects中结束). 对于隔行帧, 我使用柔度为1的“减少交错滤镜”将两个区域混合在一起. 传统的去隔行法使卡片上的文字失真太大. 然而, 滤镜的柔软度增加,在中景时造成轻微的视觉不连续性. So, 我用交错的方式将这两个序列分解成图层, 然后用五帧交叉分解从原来的递进帧到第一个交错帧, 隐藏轻微的失焦. 这两个交错的序列都以硬剪辑结束, 所以我可以不用过渡就切换回原来的视频.

然后我将新版本从After Effects中渲染到YV12模式的Lagarith编解码器中, 它使用VC-1和其他编解码器的原生8位4:2:0色彩空间. 这意味着表达式编码器不需要做任何颜色空间转换, 稍微加快压缩速度.

标记和手动关键帧
大多数人都知道,高效的编解码器既利用帧内压缩,也利用帧间压缩. 你可以把帧内压缩想象成 .它是一个独立的视频帧. 这些自包含帧是i帧,也称为关键帧. 帧间压缩基于之前和之后的i帧来预测帧的内容. 这些被称为中间帧. 这些帧的集合一起被称为一组图片(GOP)。.

查找或随机访问需要关键帧. 如果您跳到视频中的关键帧,则查找将是即时的. 如果您跳转到任何其他类型的帧(P表示渐进式), B表示双向, 下面描述), 编解码器需要在当前帧之前解码所有p帧, 回到上一个关键帧. 结果是, 更少的关键帧意味着更差的寻道性能, 但更少的关键帧也可以减少关键帧弹出,并可以提高压缩效率. 就像压缩中的其他事情一样,我们面临着一个经典的权衡. 请注意,现代编解码器将在硬剪切和重要运动时刻插入“自然关键帧”.

流媒体覆盖
免费的
合资格订户
现在就订阅 最新一期 过去的问题
提及的公司及供应商